iT邦幫忙

2024 iThome 鐵人賽

DAY 27
0
自我挑戰組

ABAP 基礎30天學習筆記系列 第 27

Day27_ABAP RESTful API架構(下)_物件生成器

  • 分享至 

  • xImage
  •  

原文連結:Introducing the Programming Model

生成額外物件

除了保存資料的表格,創建應用程式還需要更多的物件,可以用ADT的wizard來產生所需物件,下圖中的各節點都是等等會建立的物件:
https://ithelp.ithome.com.tw/upload/images/20240919/20113802wWbcpxX6yN.png

可產生的物件提供了應用程式運作所需的增刪改查必要資訊。下一章將調整與擴展當中的一些物件,並實作一些檢查與計算流程,在這邊先來建立必要物件,之前章節介紹過的一些物件會在此時被建立:

  1. 開啟物件生成器
    對目標資料表右鍵,點擊Generate ABAP Repository Object
    https://ithelp.ithome.com.tw/upload/images/20240919/20113802wLSRDmeUoz.png

  2. 選擇程式類型
    選擇ABAP RESTful Application Programming Model,按Next
    https://ithelp.ithome.com.tw/upload/images/20240919/20113802QeBbuNgx6h.png

  3. CDS View
    在ABAP中不應直接存取資料表,我們會透過建立CDS view以存取資料表,在此步驟要命名CDS視圖以及別名,注意於命名時一樣需要以Z開頭。
    https://ithelp.ithome.com.tw/upload/images/20240919/201138028NeacGxpkW.png

  4. 行為定義
    除了建立CDS查詢資料,還會需要透過行為定義(behavior definition)來增刪改資料,並在此定義哪些行為能做,而哪些不能,如下圖中可新增而不可刪改。另外也會定義草稿的可用性、產生ID編號、驗證與確定等,驗證與確定需額外手動添加,會在明後天的內容中詳述。
    https://ithelp.ithome.com.tw/upload/images/20240919/20113802levEBK0jJq.png

一樣在命名上,行為定義的實體須以Z開頭,通常會加上BP來表示為behavior pool,而草稿可以用ZD表示其為Draft。

5.Projection
Projection包含了行為定義與用來定義UI樣式的Metadata,命名上中間會用Z_C_來銜接名稱。
https://ithelp.ithome.com.tw/upload/images/20240919/201138024VfCslNqYa.png

  1. Definition
    為了發布應用程式,需要創建service definition及binding。命名上中間會用Z_UI_名稱_O4來銜接名稱,O4表示這裡使用版本4的OData協定,並指定要採用的fiori UI 元件。
    https://ithelp.ithome.com.tw/upload/images/20240919/201138020S40qfJOvi.png

最後,生成器將列出所有即將被建立的物件,可以從下圖右側表格檢視各個物件的命名規則。
https://ithelp.ithome.com.tw/upload/images/20240919/20113802SRBZXq6bjw.png

預覽OData UI 服務

發布與預覽服務

使用資料表與物件產生器,可以生成所有Fiori應用程式所需的物件,其中唯一需要手動執行的步驟就是發布服務。
https://ithelp.ithome.com.tw/upload/images/20240919/20113802cuBnxSzBwH.png
應用必須要經過發布才可以測試,發布完成後,該實體會出現在實體清單中,選取並預覽該應用。

測試應用

https://ithelp.ithome.com.tw/upload/images/20240919/20113802gw0RNzz5nL.png
點擊預覽後將開啟新視窗,此時可以建立新的航班連線,但是,目前的應用程式只會有型別檢查的動作,例如航班號碼欄位中只允許輸入數字。

接著來實作ABAP中行為定義的程式邏輯!


上一篇
Day26_ABAP RESTful API架構(上)_建立資料表
下一篇
Day28_為RESTful API添加程式邏輯(上)_Validation
系列文
ABAP 基礎30天學習筆記30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言